// Squall Sound Manager
// (c) jimon game studio

#ifndef JEH_CSOUNDMANAGER_SQUALL
#define JEH_CSOUNDMANAGER_SQUALL

#include "ISoundManager.h"
#include "Config_Engine.h"

#ifdef JE_SOUND_SQUALL

namespace je
{
	namespace sound
	{
		//! Squall Sound Manager
		class CSoundManager_Squall:public je::sound::ISoundManager
		{
		private:
			//! Root Group
			ISoundGroup * RootGroup;

			//! Load Sound
			s32 LoadSound(core::IBuffer * Buffer,u1 LoadToMemory);
		public:
			//! Constructor
			CSoundManager_Squall();

			//! Destructor
			~CSoundManager_Squall();

			//! Create Sound
			ISound * CreateSound(core::IBuffer * Buffer,ISoundGroup * Group,u1 LoadToMemory);

			//! Create Sound Group
			ISoundGroup * CreateSoundGroup();

			//! Get Root Group
			ISoundGroup * GetRootGroup();
		};
	}
}

#endif

#endif
